{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<center><h1> Gaussian discriminant analysis </h1></center>\n",
    "# 1. Basic\n",
    "The **multivariate normal(MVN)** is the most common joint distribution for multiple dimension continous variables. The pdf for an **MVN** in D dimensions is defined by the following\n",
    "$$\n",
    "\\mathcal{N}(\\vec{x}|\\vec{\\mu},\\Sigma)=\\frac{1}{(2\\pi)^{D/2}|\\Sigma|^{1/2}}exp\\left[-\\frac{1}{2}(\\vec{x}-\\vec{\\mu})^T \\Sigma^{-1}(\\vec{x}-\\vec{\\mu})\\right]\n",
    "$$\n",
    "where  $\\vec{\\mu}$ is the mean vector, $\\Sigma$ is a symmetric, positive semidefinite matrix.\n",
    "\n",
    "We can gain a better understanding of the **MVN** by performing an **eigendecomposition** of $\\Sigma$. We write $\\Sigma=U \\Lambda U^T$ where $\\Lambda$ is a diagonal matrix of eigenvalues of $\\Sigma$. Then we can write\n",
    "$$\n",
    "\\Sigma^{-1}=U^{-T} \\Lambda^{-1} U^{-1}=U \\Sigma^{-1} U^T\n",
    "$$\n",
    "So the exponential part of **MVN**'s pdf is writen as \n",
    "\\begin{align*}\n",
    "(\\vec{x}-\\vec{\\mu})^T \\Sigma^{-1}(\\vec{x}-\\vec{\\mu}) &=\n",
    "(\\vec{x}-\\vec{\\mu})^T U \\Sigma^{-1} U^T (\\vec{x}-\\vec{\\mu}) \\\\\n",
    "&=\\vec{y}^T \\Sigma^{-1} \\vec{y} \\\\\n",
    "&=\\sum_{i=1}^D \\frac{y_i^2}{\\lambda_i}\n",
    "\\end{align*}\n",
    "\n",
    "We define $\\vec{y}=U^T (\\vec{x}-\\vec{\\mu})$ above. So we can see that after some linear transformation, the density of **MVN** lie along ellipses in D-dimensions space.\n",
    "\n",
    "If we have N iid samples $\\vec{x_i} \\sim N(\\vec{\\mu},\\Sigma)$, the MLE for the parameters is given by \n",
    "\\begin{align*}\n",
    "\\hat{\\vec{\\mu}}_{mle}&=\\frac{1}{N} \\sum_{i=1}^N \\vec{x}_i=\\bar{\\vec{x}} \\\\\n",
    "\\hat{\\Sigma}_{mle}&=\\frac{1}{N} \\sum_{i=1}^N (\\vec{x}_i-\\bar{\\vec{x}})(\\vec{x}_i-\\bar{\\vec{x}})^T\n",
    "\\end{align*}\n",
    "# 2. Gaussian dicriminant analysis\n",
    "We have discuss the generative classifier for the discrete features in [previous chapter](https://github.com/thu-xd/Notes_on_ML/blob/master/04-Naive_Bayes/Naive%20Bayes.ipynb). For real valued features, **MVN** is suitable to define the class conditional densities.\n",
    "$$\n",
    "p(\\vec{x}|y=c,\\theta)=N(\\vec{x}|\\vec{\\mu}_c,\\Sigma_c)\n",
    "$$\n",
    "If the covariance $\\Sigma_c$ is diagonal, this is a Gaussian Naive Bayes classifier. The non diagonal case is what we care about.The $\\vec{\\mu}_c$ is called the center of each class c. So the **MAP** estimation for a new sample $\\vec{x}$ is\n",
    "$$\n",
    "\\hat{y}(\\vec{x})=\\underset{c}{argmax}[p(y=c)p(\\vec{x}|y=c,\\theta)]\n",
    "$$\n",
    "This is equally to find the **nearest centroids classifier**, because the **MVN**'s pdf is based on distance from the centroid.\n",
    "## 2.1 Quadratic discriminant analysis(QDA)\n",
    "The posterior over class labels is given below\n",
    "\\begin{align*}\n",
    "p(y=c|\\vec{x},\\theta) &= \\frac{p(y=c)p(\\vec{x}|y=c,\\theta)}{\\sum_{c'}p(y=c')p(\\vec{x}|y=c',\\theta)} \\\\\n",
    "&=\\frac{p(y=c)|\\Sigma_c|^{-1/2}exp\\left[-\\frac{1}{2}(\\vec{x}-\\vec{\\mu}_c)^T \\Sigma_c^{-1}(\\vec{x}-\\vec{\\mu}_c)\\right]}{\\sum_{c'}p(y=c')|\\Sigma_c'|^{-1/2}exp\\left[-\\frac{1}{2}(\\vec{x}-\\vec{\\mu}_{c'})^T \\Sigma_{c'}^{-1}(\\vec{x}-\\vec{\\mu}_{c'})\\right]}  \\\\\n",
    "&=\\frac{p(y=c)|\\Sigma_c|^{-1/2}}{\\sum_{c'}p(y=c')|\\Sigma_c'|^{-1/2}exp\\left[-\\frac{1}{2}(\\vec{x}-\\vec{\\mu}_{c'})^T \\Sigma_{c'}^{-1}(\\vec{x}-\\vec{\\mu}_{c'})+\\frac{1}{2}(\\vec{x}-\\vec{\\mu}_{c})^T \\Sigma_{c}^{-1}(\\vec{x}-\\vec{\\mu}_{c})\\right]} \n",
    "\\end{align*}\n",
    "The boundray between any two class $c_1$ and $c_2$ is a quadratic surface, which is the $ QDA$ meaning for.\n",
    "## 2.2 Linear discriminant analysis(LDA)\n",
    "The special case of $QDA$ is that the covariance of every class is the same, meaning that $\\Sigma_c=\\Sigma$.\n",
    "\\begin{align*}\n",
    "p(y=c|\\vec{x},\\theta) &=\\frac{p(y=c)|\\Sigma|^{-1/2}exp\\left[-\\frac{1}{2}(\\vec{x}-\\vec{\\mu}_c)^T \\Sigma^{-1}(\\vec{x}-\\vec{\\mu}_c)\\right]}{\\sum_{c'}p(y=c')|\\Sigma|^{-1/2}exp\\left[-\\frac{1}{2}(\\vec{x}-\\vec{\\mu}_{c'})^T \\Sigma^{-1}(\\vec{x}-\\vec{\\mu}_{c'})\\right]}  \\\\\n",
    "&=\\frac{p(y=c)exp\\left[\\vec{\\mu}_c^T\\Sigma^{-1}\\vec{x}-\\frac{1}{2}\\vec{\\mu}_c^T\\Sigma^{-1}\\vec{\\mu}_c\\right]}{\\sum_{c'} p(y=c')exp\\left[\\vec{\\mu}_{c'}^T\\Sigma^{-1}\\vec{x}-\\frac{1}{2}\\vec{\\mu}_{c'}^T\\Sigma^{-1}\\vec{\\mu}_c\\right]} \\\\\n",
    "&=\\frac{exp\\left(\\vec{\\beta}_c^T \\vec{x}+\\gamma_c\\right)}{\\sum_{c'} exp\\left(\\vec{\\beta}_{c'}^T \\vec{x}+\\gamma_{c'}\\right)}\n",
    "\\end{align*}\n",
    "We have defined that \n",
    "\\begin{align*}\n",
    "\\vec{\\beta}_c &=\\Sigma^{-1}\\vec{\\mu}_c \\\\\n",
    "\\gamma_c&=-\\frac{1}{2}\\vec{\\mu}_{c'}^T\\Sigma^{-1}\\vec{\\mu}_c+log\\,p(y=c)\n",
    "\\end{align*}\n",
    "This is amazing. It's just the same as the softmax function. The boundray between any two class $c_1$ and $c_2$ is a hyper plane in D-dimension space."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The accuracy of LDA,QDA and Gaussian Naive Bayes for Generated 2 Gaussian samples with the same covariance matrix is LDA:0.949920, QDA:0.949920, Bayes:0.934920\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "def dataset_fixed_cov():\n",
    "    '''Generate 2 Gaussian samples with the same covariance matrix'''\n",
    "    n,dim=500,2\n",
    "    np.random.seed(42)\n",
    "    Cov=np.array([[0.,-0.23],[0.83,.23]])\n",
    "    X=np.r_[np.dot(np.random.randn(n,dim),Cov),np.dot(np.random.randn(n,dim),Cov)+np.array([1,1])]\n",
    "    y=np.hstack((np.zeros(n),np.ones(n)))\n",
    "    data=np.c_[X,y]\n",
    "    np.random.shuffle(data)\n",
    "    X=data[:,0:2]\n",
    "    y=data[:,2]\n",
    "    return X,y\n",
    "\n",
    "X,y=dataset_fixed_cov()\n",
    "from sklearn.model_selection import  train_test_split\n",
    "X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42)\n",
    "\n",
    "from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n",
    "from sklearn.discriminant_analysis import QuadraticDiscriminantAnalysis\n",
    "from sklearn.naive_bayes import GaussianNB\n",
    "LDA=LinearDiscriminantAnalysis(solver=\"svd\",store_covariance=True)\n",
    "y_pred_LDA=LDA.fit(X_train,y_train).predict(X_test)\n",
    "QDA=QuadraticDiscriminantAnalysis(store_covariance=True)\n",
    "y_pred_QDA=QDA.fit(X_train,y_train).predict(X_test)\n",
    "Bayes=GaussianNB()\n",
    "y_pred_Bayes=Bayes.fit(X_train,y_train).predict(X_test)\n",
    "\n",
    "from sklearn.metrics import f1_score\n",
    "f1_LDA=f1_score(y_test,y_pred_LDA,average='macro')\n",
    "f1_QDA=f1_score(y_test,y_pred_QDA,average='macro')\n",
    "f1_Bayes=f1_score(y_test,y_pred_Bayes,average='macro')\n",
    "print(\"The accuracy of LDA,QDA and Gaussian Naive Bayes for Generated 2 Gaussian samples with the same covariance matrix is \" \n",
    "      \"LDA:%2f, QDA:%2f, Bayes:%2f\"%(f1_LDA,f1_QDA,f1_Bayes))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The result shows that for data whose class conditional distribution is multivariate Gausssian and$\\Sigma_k=\\Sigma$. QDA and LDA are the same and both have high accuracy. The accuracy of Gaussian Naive Bayes is lower because the inputs are not class conditional independent."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 1200x1200 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "plt.figure(figsize=(12,12))\n",
    "LDA_plot=plt.subplot(2,2,1)\n",
    "X_0,X_1=X[y==0],X[y==1]\n",
    "LDA_plot.plot(X_0[:,0],X_0[:,1],'o',color='g')  # plot 0 samples.\n",
    "LDA_plot.plot(X_1[:,0],X_1[:,1],'o',color='b')  # plot 1 samples.\n",
    "LDA_plot.set_xlim([-4,4])\n",
    "LDA_plot.set_ylim([-2,2])\n",
    "false_pred=(y_test!=y_pred_LDA)  # false prediction by LDA\n",
    "X_false_pred=X_test[false_pred]\n",
    "LDA_plot.plot(X_false_pred[:,0],X_false_pred[:,1],'*',color='r',markersize=10)\n",
    "LDA_plot.set_title(\"LDA\")\n",
    "LDA_plot.legend([\"0 samples\",\"1 samples\",\"false prediction samples\"])\n",
    "\n",
    "QDA_plot=plt.subplot(2,2,2)\n",
    "X_0,X_1=X[y==0],X[y==1]\n",
    "QDA_plot.plot(X_0[:,0],X_0[:,1],'o',color='g')  # plot 0 samples.\n",
    "QDA_plot.plot(X_1[:,0],X_1[:,1],'o',color='b')  # plot 1 samples.\n",
    "QDA_plot.set_xlim([-4,4])\n",
    "QDA_plot.set_ylim([-2,2])\n",
    "false_pred=(y_test!=y_pred_QDA)  # false prediction by LDA\n",
    "X_false_pred=X_test[false_pred]\n",
    "QDA_plot.plot(X_false_pred[:,0],X_false_pred[:,1],'*',color='r',markersize=10)\n",
    "QDA_plot.set_title(\"QDA\")\n",
    "QDA_plot.legend([\"0 samples\",\"1 samples\",\"false prediction samples\"])\n",
    "\n",
    "Bayes_plot=plt.subplot(2,2,3)\n",
    "X_0,X_1=X[y==0],X[y==1]\n",
    "Bayes_plot.plot(X_0[:,0],X_0[:,1],'o',color='g')  # plot 0 samples.\n",
    "Bayes_plot.plot(X_1[:,0],X_1[:,1],'o',color='b')  # plot 1 samples.\n",
    "Bayes_plot.set_xlim([-4,4])\n",
    "Bayes_plot.set_ylim([-2,2])\n",
    "false_pred=(y_test!=y_pred_Bayes)  # false prediction by LDA\n",
    "X_false_pred=X_test[false_pred]\n",
    "Bayes_plot.plot(X_false_pred[:,0],X_false_pred[:,1],'*',color='r',markersize=10)\n",
    "Bayes_plot.set_title(\"Bayes\")\n",
    "Bayes_plot.legend([\"0 samples\",\"1 samples\",\"false prediction samples\"])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can see that the false prediction samples are all near the boundray of the two classes. The Naive Bayes models make more false predictions than the LDA and QDA, because the assumption of the Naive Bayes is stronger."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The accuracy of LDA,QDA and Gaussian Naive Bayes for Generated 2 Gaussian samples with diffenrent covariance matrix is LDA:0.844996, QDA:0.904979, Bayes:0.874972\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "def dataset_diff_cov():\n",
    "    '''Generate 2 Gaussian samples with different covariance matrix'''\n",
    "    n,dim=500,2\n",
    "    np.random.seed(42)\n",
    "    Cov=np.array([[0.,-0.23],[0.83,.23]])\n",
    "    X=np.r_[np.dot(np.random.randn(n,dim),Cov),np.dot(np.random.randn(n,dim),Cov.T)+np.array([1,1])]\n",
    "    y=np.hstack((np.zeros(n),np.ones(n)))\n",
    "    data=np.c_[X,y]\n",
    "    np.random.shuffle(data)\n",
    "    X=data[:,0:2]\n",
    "    y=data[:,2]\n",
    "    return X,y\n",
    "\n",
    "X,y=dataset_diff_cov()\n",
    "from sklearn.model_selection import  train_test_split\n",
    "X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42)\n",
    "\n",
    "from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n",
    "from sklearn.discriminant_analysis import QuadraticDiscriminantAnalysis\n",
    "from sklearn.naive_bayes import GaussianNB\n",
    "LDA=LinearDiscriminantAnalysis(solver=\"svd\",store_covariance=True)\n",
    "y_pred_LDA=LDA.fit(X_train,y_train).predict(X_test)\n",
    "QDA=QuadraticDiscriminantAnalysis(store_covariance=True)\n",
    "y_pred_QDA=QDA.fit(X_train,y_train).predict(X_test)\n",
    "Bayes=GaussianNB()\n",
    "y_pred_Bayes=Bayes.fit(X_train,y_train).predict(X_test)\n",
    "\n",
    "from sklearn.metrics import f1_score\n",
    "f1_LDA=f1_score(y_test,y_pred_LDA,average='macro')\n",
    "f1_QDA=f1_score(y_test,y_pred_QDA,average='macro')\n",
    "f1_Bayes=f1_score(y_test,y_pred_Bayes,average='macro')\n",
    "print(\"The accuracy of LDA,QDA and Gaussian Naive Bayes for Generated 2 Gaussian samples with diffenrent covariance matrix is \" \n",
    "      \"LDA:%2f, QDA:%2f, Bayes:%2f\"%(f1_LDA,f1_QDA,f1_Bayes))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The result showed that for dataset whose class conditional distribution was multivariate Gaussian and with different $\\Sigma_k$ for different k, the accuracy of QDA was better than the LDA and Naive Bayes, because it made little assumption about the inputs."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7fe1fae47dd8>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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3/8+4Rve9OnTp+nr2267jZKSEoYNG8Z1113HH//4R9auXUswGGT48OHs3r2b8ePHE9rc4JFHHmnaZevaa6+NuGZZWRnDhg3j2GOP5V//+ldcP4+dO3cyceJERo4cSUlJCYsXLwa82YfDDz+ciy++mCFDhhAMBlm+fDljx45l8ODBvPzyywDcdNNNTJ8+nRNOOIHBgwfzm9/8ptV96+vrufrqq5t+5r/+9a8B+Oc//8m4ceMYPnw4Q4YM4bnnnov1n19E0kExWzFbMVs6Cudczn6MGjXKtfT222+3OhbVX/7iXEGBc9D6o6DAuZUr47tOFEVFRW7Lli3OOeeqq6tdbW2tc865Z5991k2ZMsU559zKlSvdaaed5pxzbvLkye755593zjm3Y8cOV1tb65555hn3ve99zzU0NLj6+np32mmnudWrV7e6F+AWLlzonHPu5ptvdpdffrlzzrnjjz/eXXrppU3nTZ061T333HPOOeeqqqrc4Ycf7pxz7oc//KG7+eabnXPOPfXUUw5oGnvv3r2dc84tXbrUHXfccW7Xrl3OOee2bt3adI9XXnml6R6hx5988ok75JBD3Keffupqa2vdhAkT3OOPP9403ieeeMI559zVV1/tfvGLX7T6nqL9PGpra111dbVzzrktW7a4r371q66hocF99NFHLi8vz61fv97V19e7kSNHugsvvNA1NDS4RYsWuTPPPNM559yNN97ohg4d6mpqatyWLVvcgAED3CeffOI++ugjd9RRRznnnPv1r3/dNJ49e/a4UaNGuQ8//NDdcccd7r/+67+cc87V1dW57du3txpz3P/uRBoBa10OxNFMfihmK2YrZktHFW/M7pylGgATJsCjj8J3vgN79jQf79nTOz5+vC+3qa6uZsaMGWzcuBEzo7a2ttU5Y8eO5Uc/+hHBYJApU6YwYMAAli1bxrJlyxgxYgQAO3fuZOPGjYwbNy7itYFAgO9+97sATJs2jSlTpjQ9FzoOsHz58ohatu3bt7Njxw7WrFnDY489BsBpp53Gl770pVbjW758ORdeeCEFjTM+++23X5vf8yuvvML48ePp378/AMFgkDVr1nDWWWfRvXv3pjrBUaNG8eyzz8b186itreX6669nzZo1BAIBPvnkk6aZj0GDBlFSUgLAUUcdxcSJEzEzSkpKqKysbLrumWeeSa9evejVqxcTJkzg5ZdfZvjw4U3PL1u2jPXr1/PHP/4R8P7bbdy4kdGjRzNz5kxqa2s566yzIl4jIhmimK2YrZgtHUDnTZwBtm2Dbt0gEIAePeCLL7zH27b5dosbbriBCRMm8Pjjj1NZWcn4KMH9uuuu47TTTmPp0qUce+yxLF++HOccP/nJT/j+97+f0P0srN6vd+/eTV83NDTw0ksv0atXrzZfE41zrt1zWp4fS35+ftO18vLyqKura3VOtJ/HX//6V7Zs2cKrr75Kfn4+xcXF7Gn8n2ePHj2aXhsIBJoeBwKBiOu3/B5aPnbOce+993LKKae0GtOaNWtYsmQJ06dP5+qrr+b8889v78cgIn5TzG71mmgUsxWzJXs6Z41zyEMPQU0NDBsGixd7n2tqfFupDd5fwAcffDAQe3vVDz74gJKSEq699lpKS0t55513OOWUU5g3bx47d+4E4JNPPuHTTz9t9dqGhoamv7Z/97vf8Y1vfCPqPU4++WTuu+++psfr1q0DYNy4cVRUVADw9NNP8+9//zvqa+fNm0dNTQ0An3/+OQB9+/Ztqu0Ld8wxx7B69Wo+++wz6uvreeSRRzj++OOjjiven0d1dTUHHHAA+fn5rFy5kqqqqrivF7J48WL27NnD1q1bWbVqFaNHj454/pRTTuGBBx5ommF677332LVrF1VVVRxwwAF873vf46KLLuLvf/97wvcWER8oZitmh1HMllzUuWecCwvh9tvhyiu9GYwTToC77wYfFxJcc801zJgxgzvvvJMTTjgh6jl33303K1euJC8vjyOPPJJTTz2VHj16sGHDBo477jjAW6CxcOFCDjjggIjX9u7dm7feeotRo0ZRWFjIo48+GvUe99xzD5dffjlDhw6lrq6OcePGMWfOHG688UamTp3KyJEjOf744xk4cGCr137rW99i3bp1lJaW0r17dyZNmsQtt9zCBRdcwCWXXEKvXr146aWXms4/8MAD+e///m8mTJiAc45JkyZx5plnxv0zi/bz2LFjB6effjqlpaUMHz6cww8/PO7rhRx99NGcdtppbNq0iRtuuIGDDjoo4m3Biy++mMrKSkaOHIlzjv79+7No0SJWrVrF7bffTn5+Pn369OG3v/1twvcWER8oZitmK2ZLjrO23sLJttLSUhdaERyyYcMGjjjiiCyNKPP69OnTNMMhsd1000306dOH//zP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l4vevXtz1llnsX379kb3XbVqFS+//DIPP/wwAEeOHGHXrl1ccMEFlJSUsHv3biZPnkzv3r1b9ecXERER6Wg6dOBcUuLUNDcs13C7neOtbd68efzlL39h5cqVDBw4kE2bNvHEE0/wla98hQ8++ACfz0fXrl0D53fp0iXwZ5fLFXjucrmora0NfK/pePOmz621/P73v+fss89udLxPnz6cf/75rFy5krFjxzJ//nwuuuiihP28IiIiIh1dh65x9nigtBRyc8EY57G01Dne2j755BPOP/98fvKTn9CjRw8+//xzKioqOO2003C5XDz77LPNKpd48cUX8fl8fPLJJ3z66adBAfLYsWN54oknsNaZHfP+++8D8Omnn3LWWWfxf/7P/+GKK65g8+bNLf8hRURERDqRDh04gxMkl5WBz+c8JiJonjJlChdccAEff/wxPXv25Omnnw4654477iA/P59+/foxcuRIBgwYwE033cTChQsZNmwYf/vb38jMzIz73meffTYXXnghl112GfPmzWuUtQa49957qampoX///vTr1497770XgOeff55+/foxcOBAtm/fzve+973m/fAiIiIinZTxZybbo4KCAuvfPOe3bds2+vTpk6QVJde1117L+PHj+Y//+I9kL6XT6cx/76R5jDHvWWsLkr0OERFJnA6fcRYRERERSYQOvTmwo3nmmWeSvQQRERGRTksZZxERERGRGChwFhERERGJQecInCsqYNIk51FEREREpBk6R+D88suwdCksX57slYiIiIjIcapzBM4LFjR+bKHHH3+cPn364InQFHrdunWMHz8+IfdLpLy8PPbt2wfA8OHDI577zDPP8I9//CPw/Prrr+ejjz5q1fUlWllZGf369Uv2MkRERKQD6JhdNS6+GNasOfY8Pd15fPNNZ4Sg3+jRsHp13Jd/6qmnePXVV+nVq1cLF5oYtbW1pKbG/5/yrbfeivj9Z555hn79+nH66acDMH/+/GatT0RERKQj6JgZ5+JicLuPPa+ubvwIzvd//OO4Lz1z5kw+/fRTrrjiCh599FHeeecdhg8fzqBBgxg+fDgff/xx0GvWr1/PwIEDGThwIIMGDeLgwYMAPPTQQwwdOpT+/fszZ86ckPfr1q0bt99+O4MHD2b06NHs3bsXgFGjRnHPPfdw4YUX8thjj7F3716+/e1vM3ToUIYOHcqbb74JQHl5OWPGjGHQoEF8//vfp+HAm27dugX+/OCDD5Kfn8+AAQO4++67+d3vfsfGjRvxeDwMHDiQqqoqRo0ahX8gzeLFiwOTEe+6665G1ywuLmbAgAEMGzaMf/3rXzG9H4cOHWL06NEMHjyY/Px8li1bBjgZ43POOYfrr7+efv364fF4WL16NSNGjKB379688847ANx3331cc801XHTRRfTu3Ztf/epXQfetq6vjjjvuCLznv/zlLwH45z//yciRIxk4cCD9+vXjj3/8Y7j//CIiItKZWWvb7deQIUNsUx999FHQsZDeeMNat9taCP5yu61duza264SQm5tr9+7da621tqKiwtbU1FhrrX399dft5MmTrbXWrl271o4bN85aa+348ePtn/70J2uttQcPHrQ1NTX2tddeszfccIP1+Xy2rq7Ojhs3zq5fvz7oXoBdtGiRtdba+++/3958883WWmsvvPBCe+ONNwbOmzJliv3jH/9orbV2586d9pxzzrHWWvuDH/zA3n///dZaa1esWGGBwNozMzOttda+8sor9oILLrCHDx+21lpbXl4euMe7774buIf/+Z49e+yZZ55pv/jiC1tTU2MLCwvtSy+9FFjvyy+/bK219o477rD//d//HfQzhXo/ampqbEVFhbXW2r1799qvfe1r1ufz2c8++8ympKTYzZs327q6Ojt48GB73XXXWZ/PZ5cuXWonTpxorbV2zpw5tn///raystLu3bvX9uzZ0+7Zs8d+9tln9txzz7XWWvvLX/4ysJ4jR47YIUOG2E8//dQ+/PDD9n/+53+stdbW1tbaAwcOBK055r93IvWAjbYd/O+ovvSlL33pK3FfHbNUA6CwEJ5/Hr7zHThy5Njxrl2d46NGJeQ2FRUVTJs2jR07dmCMoaamJuicESNGcNttt+HxeJg8eTI9e/Zk1apVrFq1ikGDBgFw6NAhduzYwciRIxu91uVy8d3vfheAqVOnMnny5MD3/McBVq9e3aj++MCBAxw8eJANGzawZMkSAMaNG8dJJ50UtL7Vq1dz3XXX4a7P0p988skRf+Z3332XUaNGccoppwDg8XjYsGEDV155Jenp6YHa7iFDhvD666/H9H7U1NRwzz33sGHDBlwuF3v27Alkq3v16kV+fj4A5557LqNHj8YYQ35+PmVlZYHrTpw4kYyMDDIyMigs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\n",
      "text/plain": [
       "<Figure size 864x864 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "plt.figure(figsize=(12,12))\n",
    "LDA_plot=plt.subplot(2,2,1)\n",
    "X_0,X_1=X[y==0],X[y==1]\n",
    "LDA_plot.plot(X_0[:,0],X_0[:,1],'o',color='g')  # plot 0 samples.\n",
    "LDA_plot.plot(X_1[:,0],X_1[:,1],'o',color='b')  # plot 1 samples.\n",
    "LDA_plot.set_xlim([-4,4])\n",
    "LDA_plot.set_ylim([-2,2])\n",
    "false_pred=(y_test!=y_pred_LDA)  # false prediction by LDA\n",
    "X_false_pred=X_test[false_pred]\n",
    "LDA_plot.plot(X_false_pred[:,0],X_false_pred[:,1],'*',color='r',markersize=10)\n",
    "LDA_plot.set_title(\"LDA\")\n",
    "LDA_plot.legend([\"0 samples\",\"1 samples\",\"false prediction samples\"])\n",
    "\n",
    "QDA_plot=plt.subplot(2,2,2)\n",
    "X_0,X_1=X[y==0],X[y==1]\n",
    "QDA_plot.plot(X_0[:,0],X_0[:,1],'o',color='g')  # plot 0 samples.\n",
    "QDA_plot.plot(X_1[:,0],X_1[:,1],'o',color='b')  # plot 1 samples.\n",
    "QDA_plot.set_xlim([-4,4])\n",
    "QDA_plot.set_ylim([-2,2])\n",
    "false_pred=(y_test!=y_pred_QDA)  # false prediction by LDA\n",
    "X_false_pred=X_test[false_pred]\n",
    "QDA_plot.plot(X_false_pred[:,0],X_false_pred[:,1],'*',color='r',markersize=10)\n",
    "QDA_plot.set_title(\"QDA\")\n",
    "QDA_plot.legend([\"0 samples\",\"1 samples\",\"false prediction samples\"])\n",
    "\n",
    "Bayes_plot=plt.subplot(2,2,3)\n",
    "X_0,X_1=X[y==0],X[y==1]\n",
    "Bayes_plot.plot(X_0[:,0],X_0[:,1],'o',color='g')  # plot 0 samples.\n",
    "Bayes_plot.plot(X_1[:,0],X_1[:,1],'o',color='b')  # plot 1 samples.\n",
    "Bayes_plot.set_xlim([-4,4])\n",
    "Bayes_plot.set_ylim([-2,2])\n",
    "false_pred=(y_test!=y_pred_Bayes)  # false prediction by LDA\n",
    "X_false_pred=X_test[false_pred]\n",
    "Bayes_plot.plot(X_false_pred[:,0],X_false_pred[:,1],'*',color='r',markersize=10)\n",
    "Bayes_plot.set_title(\"Bayes\")\n",
    "Bayes_plot.legend([\"0 samples\",\"1 samples\",\"false prediction samples\"])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 3. MLE for discriminant analysis\n",
    "The simple way to estimate the parameters in the $QDA$ or $LDA$ is using $MLE$. The log likelihood function is as following\n",
    "\\begin{align*}\n",
    "logp(D|\\theta) & =\\sum_{i=1}^N log [\\pi_{yi} \\mathcal{N}(\\vec{x}_i|\\vec{\\mu}_{yi},\\Sigma_{yi}]\\\\\n",
    "&=\\sum_{i=1}^N log[\\pi_{yi}]+ \\sum_{i=1}^N log[\\mathcal{N}(\\vec{x}_i|\\vec{\\mu}_{yi},\\Sigma_{yi}]\n",
    "\\end{align*}\n",
    "\n",
    "So we can get the estimate on $\\pi_c$ , $\\vec{\\mu}_c$ and $\\Sigma_c$ easily.But the **MLE** estimation can badly overfit in high dimensions because we are estimate a full covariance matrix. The solutions are as following\n",
    "* Naive Bayes. we force the covariance matrix to be diagonal.\n",
    "* LDA. we force the covariance matrix is the same over different classes.\n",
    "* MAP estimation. Fit a full or diagonal covariance matrix by MAP estimation.\n",
    "* Dimension reduction. Using dimension reduction method to project the data into a low dimensional subspace.\n",
    "\n",
    "# 4.MAP estimation\n",
    "The **MLE** estimation can lead to overfit in high dimensions. We shall develop a Bayesian treatment by inrtoducing prior distributions over the unknown parameters. For iid samples $\\vec{x}_i \\sim \\mathcal{N}(\\vec{x}|\\vec{\\mu},\\Sigma)$. We shall firstly condisder the simple case when the $\\vec{x}$ is just a scalar, which means $x_i \\sim N(x|\\mu,\\sigma^2)$\n",
    "## 4.1 Known $\\sigma^2$\n",
    "When the covariance $\\sigma^2$ is known, we consider the task of inferring the mean $\\mu$ from the samples. The likelihood function is given by \n",
    "\\begin{align*}\n",
    "p(X|\\mu)&=\\prod_{i=1}^N p(x_i|\\mu)\\\\\n",
    "&=\\prod_{i=1}^N \\frac{1}{(2\\pi\\sigma^2)^{1/2}}exp \\left[-\\frac{1}{2\\sigma^2}(x_i-\\mu)^2\\right] \\\\\n",
    "&=\\frac{1}{(2\\pi\\sigma^2)^{N/2}}exp\\left[-\\frac{1}{2\\sigma^2}\\sum_{i=1}^N(x_i-\\mu)^2\\right]\n",
    "\\end{align*}\n",
    "\n",
    "We can see that the likelihood function take the form of the Gaussian distribution, so we can use Gaussian distribution  as the prior for the $\\mu$. We can choose $p(\\mu)=N(\\mu|\\mu_0,\\sigma_0^2)$, and the posterior distribution of $\\mu$ will also be a Gaussian distribution.\n",
    "## 4.2 Known $\\mu$\n",
    "When the mean $\\mu$ is known, we consider the task of inferring the covariance $\\sigma^2$ from the samples. The likelihood function is as following\n",
    "$$\n",
    "p(X|\\lambda) \\propto \\lambda^{N/2} exp\\left[-\\frac{\\lambda}{2}\\sum_{i=1}^N(x_i-\\mu)^2\\right]\n",
    "$$\n",
    "where we have defined $\\lambda=\\frac{1}{\\sigma^2}$ as the precision of the distribution.\n",
    "We can see that the likelihood function takes the form of gamma distribution\n",
    "$$\n",
    "Gam(\\lambda|a,b)=\\frac{1}{\\Gamma(a)}b^a\\lambda^{a-1}exp(-b\\lambda)\n",
    "$$\n",
    "If we use this prior distribution, we can calculate the posterior distribution of $\\lambda$.\n",
    "$$\n",
    "p(\\lambda|X) \\propto \\lambda^{N/2+a-1} exp\\left[-(b_0+\\frac{1}{2}\\sum_{i=1}^N(x_i-\\mu)^2)\\lambda\\right]\n",
    "$$\n",
    "Which is also a gamma distribution.\n",
    "## 4.3 The $\\mu$ and $\\sigma^2$ are unknown\n",
    "The likelihood function is as following\n",
    "\\begin{align*}\n",
    "p(X|\\mu,\\lambda) &=\\prod_{i=1}^N(\\frac{\\lambda}{2\\pi})^{1/2} exp\\left[ -\\frac{\\lambda}{2} (x_i-\\mu)^2 \\right] \\\\\n",
    "& \\propto \\left[\\lambda^{1/2}exp\\left(-\\frac{\\lambda\\mu^2}{2}\\right) \\right]^N exp\\lbrace\\lambda\\mu \\sum_{i=1}^N x_i-\\frac{\\lambda}{2}\\sum_{i=1}^N x_i^2 \\rbrace\n",
    "\\end{align*}\n",
    "This is a awasome form, but we need to find a prior distribution $p(\\mu,\\lambda)$ that has the same functional form as above. We use the prior as following\n",
    "\\begin{align*}\n",
    "p(\\mu,\\lambda) & \\propto \\left[\\lambda^{1/2}exp\\left(-\\frac{\\lambda\\mu^2}{2}\\right) \\right]^\\beta exp\\lbrace c\\lambda\\mu -d\\lambda \\rbrace\\\\\n",
    "&=exp\\lbrace -\\frac{\\lambda\\beta}{2}(\\mu-\\frac{c}{\\beta})^2 \\rbrace \\lambda^{\\frac{\\beta}{2}}exp\\lbrace -\\left(d-\\frac{c^2}{2\\beta}\\right) \\lambda \\rbrace\\\\\n",
    "&=N(\\mu|\\mu_0,(\\beta\\lambda)^{-1})Gam(\\lambda|a,b)\n",
    "\\end{align*}\n",
    "\n",
    "These joint distribution of $\\mu$ and $\\lambda$ is called Gaussian-Gamma distribution. It's used as prior when the mean and covariance are both unknown. You should notice that the $\\mu$ and $\\lambda$ is not independent.\n",
    "## 4.4 Multivariate case\n",
    "In the case of the multivariate Gaussian distribution $N(\\vec{x}|\\vec{\\mu},\\Lambda^{-1})$ for a D-dimensional variable $\\vec{x}$. The prior distribution for the mean $\\vec{\\mu}$ is again a Gaussian.For known mean and unknown precision matrix $\\Lambda$, the prior is the **Wishart** distribution given by\n",
    "\\begin{align*}\n",
    "\\mathcal{W}(\\Lambda|W,\\nu) &=B(W,\\nu)|\\Lambda|^{(\\nu-D-1)/2}exp\\left(-\\frac{1}{2}Tr(W^{-1}\\Lambda) \\right) \\\\\n",
    "B(W,\\nu) &=|W|^{-\\nu/2}\\left(2^{\\nu D/2}\\pi^{D(D-1)/4} \\prod_{i=1}^D \\Gamma \\left(\\frac{\\nu+1-i}{2} \\right) \\right)^{-1}\n",
    "\\end{align*}\n",
    "where $\\nu \\geq D $ is called the **degrees of freedom** of the distribution, $W$ is a $D \\times D$ scale matrix.The **Wishart** distribution is a multivariate generalization of Gamma distribution. The mean and mode of the **Wishart** distribution is as following\n",
    "\\begin{align*}\n",
    "mean &=\\nu W  \\\\\n",
    "mode &=(\\nu-D-1) W\n",
    "\\end{align*}\n",
    "For unknown mean $\\vec{\\mu}$ and unknown precision $\\Lambda$, the prior is given by\n",
    "\\begin{equation*}\n",
    "p(\\vec{\\mu},\\Lambda|\\vec{\\mu}_0,\\beta,W,\\nu)=\\mathcal{N}(\\vec{\\mu}|\\vec{\\mu}_0,(\\beta\\Lambda)^{-1})\\mathcal{W}(\\Lambda|W,\\nu)\n",
    "\\end{equation*}\n",
    "This is called the Gaussian-Wishart distribution."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [conda env:tensorflow-cpu-1.11]",
   "language": "python",
   "name": "conda-env-tensorflow-cpu-1.11-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
